// 封装一个本地存储类，专门用于处理需要本地存储的数据
class localCache {
  // 设置本地存储
  setCache(key: string, value: any, isLocal: boolean = true) {
    if (isLocal) {
      localStorage.setItem(key, JSON.stringify(value))
    } else {
      sessionStorage.setItem(key, JSON.stringify(value))
    }
  }
  // 读取本地存储
  getCache(key: string, isLocal: boolean = true) {
    if (isLocal) {
      const value = localStorage.getItem(key)
      return value ? JSON.parse(value) : ''
    } else {
      const value = sessionStorage.getItem(key)
      return value ? JSON.parse(value) : ''
    }
  }
  // 删除指定存储
  deleteCache(key: string, isLocal: boolean = true) {
    if (isLocal) {
      localStorage.removeItem(key)
    } else {
      sessionStorage.removeItem(key)
    }
  }
  // 删除所有存储
  clearCache(isLocal: boolean = true) {
    if (isLocal) {
      localStorage.clear()
    } else {
      sessionStorage.clear()
    }
  }
}

export default new localCache()
